1 Data preparation

1.1 Outline

  • Load scripts: loads libraries and useful scripts used in the analyses; all .R files contained in scripts at the root of the factory are automatically loaded

  • Load data: imports datasets, and may contain some ad hoc changes to the data such as specific data cleaning (not used in other reports), new variables used in the analyses, etc.

1.2 Load packages


library(reportfactory)
library(here)
library(rio) 
library(tidyverse)
library(incidence)
library(distcrete)
library(epitrix)
library(earlyR)
library(projections)
library(linelist)
library(remotes)
library(janitor)
library(kableExtra)
library(DT)
library(cyphr)
library(chngpt)
library(lubridate)
library(ggpubr)
library(ggnewscale)

1.3 Load scripts

These scripts will load:

  • all scripts stored as .R files inside /scripts/
  • all scripts stored as .R files inside /src/

These scripts also contain routines to access the latest clean encrypted data (see next section).


reportfactory::rfh_load_scripts()

1.4 Load clean data

We import the latest NHS pathways data:


x <- import_pathways() %>%
  as_tibble()
x
## # A tibble: 265,870 x 11
##    site_type date       sex   age   ccg_code ccg_name count postcode nhs_region
##    <chr>     <date>     <chr> <chr> <chr>    <chr>    <int> <chr>    <chr>     
##  1 111       2020-03-18 fema… miss… e380000… nhs_glo…     1 gl34fe   South West
##  2 111       2020-03-18 fema… miss… e380001… nhs_sou…     1 ne325nn  North Eas…
##  3 111       2020-03-18 fema… 0-18  e380000… nhs_air…     8 bd57jr   North Eas…
##  4 111       2020-03-18 fema… 0-18  e380000… nhs_ash…     7 tn254ab  South East
##  5 111       2020-03-18 fema… 0-18  e380000… nhs_bar…    35 rm13ae   London    
##  6 111       2020-03-18 fema… 0-18  e380000… nhs_bar…     9 n111np   London    
##  7 111       2020-03-18 fema… 0-18  e380000… nhs_bar…    11 s752py   North Eas…
##  8 111       2020-03-18 fema… 0-18  e380000… nhs_bas…    19 ss143hg  East of E…
##  9 111       2020-03-18 fema… 0-18  e380000… nhs_bas…     6 dn227xf  North Eas…
## 10 111       2020-03-18 fema… 0-18  e380000… nhs_bat…     9 ba25rp   South West
## # … with 265,860 more rows, and 2 more variables: day <int>, weekday <fct>

We also import demographics data for NHS regions in England, used later in our analysis:


path <- here::here("data", "csv", "nhs_region_population_2018.csv")
nhs_region_pop <- rio::import(path) %>%
  mutate(nhs_region = str_to_title(gsub("_"," ",nhs_region)))

nhs_region_pop$nhs_region <- gsub(" Of ", " of ", nhs_region_pop$nhs_region)
nhs_region_pop$nhs_region <- gsub(" And ", " and ", nhs_region_pop$nhs_region)
nhs_region_pop
##                  nhs_region variable      value
## 1                North West     0-18 0.22538599
## 2  North East and Yorkshire     0-18 0.21876449
## 3                  Midlands     0-18 0.22564656
## 4           East of England     0-18 0.22810783
## 5                    London     0-18 0.23764782
## 6                South East     0-18 0.22458811
## 7                South West     0-18 0.20799797
## 8                North West    19-69 0.64274078
## 9  North East and Yorkshire    19-69 0.64437753
## 10                 Midlands    19-69 0.63876675
## 11          East of England    19-69 0.63034229
## 12                   London    19-69 0.67820084
## 13               South East    19-69 0.63267336
## 14               South West    19-69 0.63176131
## 15               North West   70-120 0.13187323
## 16 North East and Yorkshire   70-120 0.13685797
## 17                 Midlands   70-120 0.13558669
## 18          East of England   70-120 0.14154988
## 19                   London   70-120 0.08415135
## 20               South East   70-120 0.14273853
## 21               South West   70-120 0.16024072

Finally, we import publically available deaths per NHS region:


dth <- import_deaths() %>%
  mutate(nhs_region = str_to_title(gsub("_"," ",nhs_region)))

#truncation to account for reporting delay
delay_max <- 21

dth$nhs_region <- gsub(" Of ", " of ", dth$nhs_region)
dth$nhs_region <- gsub(" And ", " and ", dth$nhs_region)
dth
##      date_report               nhs_region deaths
## 1     2020-03-01          East of England      0
## 2     2020-03-02          East of England      1
## 3     2020-03-03          East of England      0
## 4     2020-03-04          East of England      0
## 5     2020-03-05          East of England      0
## 6     2020-03-06          East of England      1
## 7     2020-03-07          East of England      0
## 8     2020-03-08          East of England      0
## 9     2020-03-09          East of England      1
## 10    2020-03-10          East of England      0
## 11    2020-03-11          East of England      0
## 12    2020-03-12          East of England      0
## 13    2020-03-13          East of England      1
## 14    2020-03-14          East of England      2
## 15    2020-03-15          East of England      2
## 16    2020-03-16          East of England      1
## 17    2020-03-17          East of England      1
## 18    2020-03-18          East of England      5
## 19    2020-03-19          East of England      4
## 20    2020-03-20          East of England      2
## 21    2020-03-21          East of England     11
## 22    2020-03-22          East of England     12
## 23    2020-03-23          East of England     11
## 24    2020-03-24          East of England     19
## 25    2020-03-25          East of England     26
## 26    2020-03-26          East of England     36
## 27    2020-03-27          East of England     38
## 28    2020-03-28          East of England     28
## 29    2020-03-29          East of England     43
## 30    2020-03-30          East of England     45
## 31    2020-03-31          East of England     70
## 32    2020-04-01          East of England     62
## 33    2020-04-02          East of England     65
## 34    2020-04-03          East of England     80
## 35    2020-04-04          East of England     71
## 36    2020-04-05          East of England     76
## 37    2020-04-06          East of England     71
## 38    2020-04-07          East of England     93
## 39    2020-04-08          East of England    111
## 40    2020-04-09          East of England     87
## 41    2020-04-10          East of England     74
## 42    2020-04-11          East of England     92
## 43    2020-04-12          East of England    100
## 44    2020-04-13          East of England     78
## 45    2020-04-14          East of England     61
## 46    2020-04-15          East of England     82
## 47    2020-04-16          East of England     74
## 48    2020-04-17          East of England     86
## 49    2020-04-18          East of England     64
## 50    2020-04-19          East of England     67
## 51    2020-04-20          East of England     67
## 52    2020-04-21          East of England     75
## 53    2020-04-22          East of England     67
## 54    2020-04-23          East of England     49
## 55    2020-04-24          East of England     66
## 56    2020-04-25          East of England     54
## 57    2020-04-26          East of England     48
## 58    2020-04-27          East of England     46
## 59    2020-04-28          East of England     58
## 60    2020-04-29          East of England     32
## 61    2020-04-30          East of England     45
## 62    2020-05-01          East of England     49
## 63    2020-05-02          East of England     29
## 64    2020-05-03          East of England     41
## 65    2020-05-04          East of England     19
## 66    2020-05-05          East of England     36
## 67    2020-05-06          East of England     31
## 68    2020-05-07          East of England     33
## 69    2020-05-08          East of England     33
## 70    2020-05-09          East of England     29
## 71    2020-05-10          East of England     22
## 72    2020-05-11          East of England     18
## 73    2020-05-12          East of England     21
## 74    2020-05-13          East of England     27
## 75    2020-05-14          East of England     26
## 76    2020-05-15          East of England     19
## 77    2020-05-16          East of England     26
## 78    2020-05-17          East of England     17
## 79    2020-05-18          East of England     25
## 80    2020-05-19          East of England     15
## 81    2020-05-20          East of England     26
## 82    2020-05-21          East of England     21
## 83    2020-05-22          East of England     13
## 84    2020-05-23          East of England     12
## 85    2020-05-24          East of England     17
## 86    2020-05-25          East of England     25
## 87    2020-05-26          East of England     14
## 88    2020-05-27          East of England     12
## 89    2020-05-28          East of England     17
## 90    2020-05-29          East of England     16
## 91    2020-05-30          East of England      9
## 92    2020-05-31          East of England      8
## 93    2020-06-01          East of England     17
## 94    2020-06-02          East of England     14
## 95    2020-06-03          East of England     10
## 96    2020-06-04          East of England      7
## 97    2020-06-05          East of England     14
## 98    2020-06-06          East of England      5
## 99    2020-06-07          East of England      9
## 100   2020-06-08          East of England      7
## 101   2020-06-09          East of England      6
## 102   2020-06-10          East of England      8
## 103   2020-06-11          East of England      1
## 104   2020-06-12          East of England      9
## 105   2020-06-13          East of England      5
## 106   2020-06-14          East of England      4
## 107   2020-06-15          East of England      8
## 108   2020-06-16          East of England      3
## 109   2020-06-17          East of England      7
## 110   2020-06-18          East of England      4
## 111   2020-06-19          East of England      7
## 112   2020-06-20          East of England      4
## 113   2020-06-21          East of England      3
## 114   2020-06-22          East of England      6
## 115   2020-06-23          East of England      5
## 116   2020-06-24          East of England      4
## 117   2020-06-25          East of England      1
## 118   2020-06-26          East of England      5
## 119   2020-06-27          East of England      6
## 120   2020-06-28          East of England      8
## 121   2020-06-29          East of England      4
## 122   2020-06-30          East of England      5
## 123   2020-07-01          East of England      2
## 124   2020-07-02          East of England      5
## 125   2020-07-03          East of England      0
## 126   2020-07-04          East of England      3
## 127   2020-07-05          East of England      1
## 128   2020-07-06          East of England      2
## 129   2020-07-07          East of England      2
## 130   2020-07-08          East of England      0
## 131   2020-07-09          East of England      8
## 132   2020-07-10          East of England      4
## 133   2020-07-11          East of England      2
## 134   2020-07-12          East of England      1
## 135   2020-07-13          East of England      8
## 136   2020-07-14          East of England      2
## 137   2020-07-15          East of England      0
## 138   2020-07-16          East of England      0
## 139   2020-07-17          East of England      0
## 140   2020-07-18          East of England      0
## 141   2020-07-19          East of England      1
## 142   2020-07-20          East of England      1
## 143   2020-07-21          East of England      1
## 144   2020-07-22          East of England      2
## 145   2020-07-23          East of England      1
## 146   2020-07-24          East of England      1
## 147   2020-07-25          East of England      0
## 148   2020-07-26          East of England      1
## 149   2020-07-27          East of England      1
## 150   2020-07-28          East of England      2
## 151   2020-07-29          East of England      0
## 152   2020-07-30          East of England      0
## 153   2020-07-31          East of England      1
## 154   2020-08-01          East of England      0
## 155   2020-08-02          East of England      0
## 156   2020-08-03          East of England      0
## 157   2020-08-04          East of England      1
## 158   2020-08-05          East of England      1
## 159   2020-08-06          East of England      0
## 160   2020-08-07          East of England      1
## 161   2020-08-08          East of England      0
## 162   2020-08-09          East of England      0
## 163   2020-08-10          East of England      1
## 164   2020-08-11          East of England      2
## 165   2020-08-12          East of England      1
## 166   2020-08-13          East of England      0
## 167   2020-08-14          East of England      1
## 168   2020-08-15          East of England      1
## 169   2020-08-16          East of England      0
## 170   2020-08-17          East of England      0
## 171   2020-08-18          East of England      2
## 172   2020-08-19          East of England      1
## 173   2020-08-20          East of England      1
## 174   2020-08-21          East of England      0
## 175   2020-08-22          East of England      1
## 176   2020-08-23          East of England      1
## 177   2020-08-24          East of England      0
## 178   2020-08-25          East of England      0
## 179   2020-08-26          East of England      1
## 180   2020-08-27          East of England      1
## 181   2020-08-28          East of England      0
## 182   2020-08-29          East of England      0
## 183   2020-08-30          East of England      0
## 184   2020-08-31          East of England      0
## 185   2020-09-01          East of England      0
## 186   2020-09-02          East of England      0
## 187   2020-09-03          East of England      1
## 188   2020-09-04          East of England      1
## 189   2020-09-05          East of England      0
## 190   2020-09-06          East of England      1
## 191   2020-09-07          East of England      0
## 192   2020-09-08          East of England      0
## 193   2020-09-09          East of England      0
## 194   2020-09-10          East of England      0
## 195   2020-09-11          East of England      0
## 196   2020-09-12          East of England      0
## 197   2020-09-13          East of England      1
## 198   2020-09-14          East of England      1
## 199   2020-09-15          East of England      0
## 200   2020-09-16          East of England      0
## 201   2020-09-17          East of England      0
## 202   2020-09-18          East of England      0
## 203   2020-09-19          East of England      0
## 204   2020-09-20          East of England      2
## 205   2020-09-21          East of England      0
## 206   2020-09-22          East of England      2
## 207   2020-09-23          East of England      1
## 208   2020-09-24          East of England      0
## 209   2020-09-25          East of England      0
## 210   2020-09-26          East of England      0
## 211   2020-09-27          East of England      0
## 212   2020-09-28          East of England      0
## 213   2020-03-01                   London      0
## 214   2020-03-02                   London      0
## 215   2020-03-03                   London      0
## 216   2020-03-04                   London      0
## 217   2020-03-05                   London      0
## 218   2020-03-06                   London      1
## 219   2020-03-07                   London      0
## 220   2020-03-08                   London      0
## 221   2020-03-09                   London      1
## 222   2020-03-10                   London      0
## 223   2020-03-11                   London      5
## 224   2020-03-12                   London      6
## 225   2020-03-13                   London     10
## 226   2020-03-14                   London     13
## 227   2020-03-15                   London      9
## 228   2020-03-16                   London     15
## 229   2020-03-17                   London     23
## 230   2020-03-18                   London     28
## 231   2020-03-19                   London     25
## 232   2020-03-20                   London     44
## 233   2020-03-21                   London     49
## 234   2020-03-22                   London     54
## 235   2020-03-23                   London     63
## 236   2020-03-24                   London     86
## 237   2020-03-25                   London    112
## 238   2020-03-26                   London    129
## 239   2020-03-27                   London    129
## 240   2020-03-28                   London    122
## 241   2020-03-29                   London    145
## 242   2020-03-30                   London    149
## 243   2020-03-31                   London    182
## 244   2020-04-01                   London    202
## 245   2020-04-02                   London    191
## 246   2020-04-03                   London    199
## 247   2020-04-04                   London    231
## 248   2020-04-05                   London    195
## 249   2020-04-06                   London    197
## 250   2020-04-07                   London    220
## 251   2020-04-08                   London    239
## 252   2020-04-09                   London    206
## 253   2020-04-10                   London    171
## 254   2020-04-11                   London    178
## 255   2020-04-12                   London    158
## 256   2020-04-13                   London    166
## 257   2020-04-14                   London    143
## 258   2020-04-15                   London    142
## 259   2020-04-16                   London    140
## 260   2020-04-17                   London    101
## 261   2020-04-18                   London    101
## 262   2020-04-19                   London    103
## 263   2020-04-20                   London     96
## 264   2020-04-21                   London     95
## 265   2020-04-22                   London    109
## 266   2020-04-23                   London     77
## 267   2020-04-24                   London     71
## 268   2020-04-25                   London     58
## 269   2020-04-26                   London     53
## 270   2020-04-27                   London     52
## 271   2020-04-28                   London     44
## 272   2020-04-29                   London     45
## 273   2020-04-30                   London     40
## 274   2020-05-01                   London     41
## 275   2020-05-02                   London     41
## 276   2020-05-03                   London     36
## 277   2020-05-04                   London     30
## 278   2020-05-05                   London     25
## 279   2020-05-06                   London     37
## 280   2020-05-07                   London     37
## 281   2020-05-08                   London     30
## 282   2020-05-09                   London     23
## 283   2020-05-10                   London     26
## 284   2020-05-11                   London     18
## 285   2020-05-12                   London     18
## 286   2020-05-13                   London     17
## 287   2020-05-14                   London     20
## 288   2020-05-15                   London     19
## 289   2020-05-16                   London     14
## 290   2020-05-17                   London     15
## 291   2020-05-18                   London     11
## 292   2020-05-19                   London     14
## 293   2020-05-20                   London     19
## 294   2020-05-21                   London     12
## 295   2020-05-22                   London     10
## 296   2020-05-23                   London      6
## 297   2020-05-24                   London      7
## 298   2020-05-25                   London      9
## 299   2020-05-26                   London     14
## 300   2020-05-27                   London      7
## 301   2020-05-28                   London      8
## 302   2020-05-29                   London      7
## 303   2020-05-30                   London     12
## 304   2020-05-31                   London      6
## 305   2020-06-01                   London     10
## 306   2020-06-02                   London      8
## 307   2020-06-03                   London      6
## 308   2020-06-04                   London      8
## 309   2020-06-05                   London      4
## 310   2020-06-06                   London      0
## 311   2020-06-07                   London      5
## 312   2020-06-08                   London      5
## 313   2020-06-09                   London      5
## 314   2020-06-10                   London      8
## 315   2020-06-11                   London      5
## 316   2020-06-12                   London      3
## 317   2020-06-13                   London      3
## 318   2020-06-14                   London      3
## 319   2020-06-15                   London      1
## 320   2020-06-16                   London      2
## 321   2020-06-17                   London      1
## 322   2020-06-18                   London      2
## 323   2020-06-19                   London      5
## 324   2020-06-20                   London      3
## 325   2020-06-21                   London      4
## 326   2020-06-22                   London      2
## 327   2020-06-23                   London      1
## 328   2020-06-24                   London      4
## 329   2020-06-25                   London      3
## 330   2020-06-26                   London      2
## 331   2020-06-27                   London      1
## 332   2020-06-28                   London      2
## 333   2020-06-29                   London      2
## 334   2020-06-30                   London      1
## 335   2020-07-01                   London      2
## 336   2020-07-02                   London      2
## 337   2020-07-03                   London      2
## 338   2020-07-04                   London      1
## 339   2020-07-05                   London      3
## 340   2020-07-06                   London      2
## 341   2020-07-07                   London      1
## 342   2020-07-08                   London      3
## 343   2020-07-09                   London      4
## 344   2020-07-10                   London      0
## 345   2020-07-11                   London      1
## 346   2020-07-12                   London      1
## 347   2020-07-13                   London      1
## 348   2020-07-14                   London      0
## 349   2020-07-15                   London      2
## 350   2020-07-16                   London      0
## 351   2020-07-17                   London      0
## 352   2020-07-18                   London      2
## 353   2020-07-19                   London      0
## 354   2020-07-20                   London      0
## 355   2020-07-21                   London      1
## 356   2020-07-22                   London      0
## 357   2020-07-23                   London      2
## 358   2020-07-24                   London      0
## 359   2020-07-25                   London      1
## 360   2020-07-26                   London      0
## 361   2020-07-27                   London      1
## 362   2020-07-28                   London      0
## 363   2020-07-29                   London      0
## 364   2020-07-30                   London      1
## 365   2020-07-31                   London      0
## 366   2020-08-01                   London      0
## 367   2020-08-02                   London      3
## 368   2020-08-03                   London      0
## 369   2020-08-04                   London      0
## 370   2020-08-05                   London      0
## 371   2020-08-06                   London      1
## 372   2020-08-07                   London      0
## 373   2020-08-08                   London      0
## 374   2020-08-09                   London      0
## 375   2020-08-10                   London      0
## 376   2020-08-11                   London      1
## 377   2020-08-12                   London      0
## 378   2020-08-13                   London      2
## 379   2020-08-14                   London      0
## 380   2020-08-15                   London      0
## 381   2020-08-16                   London      0
## 382   2020-08-17                   London      1
## 383   2020-08-18                   London      1
## 384   2020-08-19                   London      0
## 385   2020-08-20                   London      1
## 386   2020-08-21                   London      0
## 387   2020-08-22                   London      0
## 388   2020-08-23                   London      0
## 389   2020-08-24                   London      1
## 390   2020-08-25                   London      1
## 391   2020-08-26                   London      0
## 392   2020-08-27                   London      0
## 393   2020-08-28                   London      0
## 394   2020-08-29                   London      0
## 395   2020-08-30                   London      0
## 396   2020-08-31                   London      1
## 397   2020-09-01                   London      0
## 398   2020-09-02                   London      1
## 399   2020-09-03                   London      1
## 400   2020-09-04                   London      0
## 401   2020-09-05                   London      0
## 402   2020-09-06                   London      2
## 403   2020-09-07                   London      0
## 404   2020-09-08                   London      0
## 405   2020-09-09                   London      0
## 406   2020-09-10                   London      2
## 407   2020-09-11                   London      1
## 408   2020-09-12                   London      1
## 409   2020-09-13                   London      0
## 410   2020-09-14                   London      0
## 411   2020-09-15                   London      1
## 412   2020-09-16                   London      2
## 413   2020-09-17                   London      2
## 414   2020-09-18                   London      1
## 415   2020-09-19                   London      3
## 416   2020-09-20                   London      3
## 417   2020-09-21                   London      2
## 418   2020-09-22                   London      6
## 419   2020-09-23                   London      4
## 420   2020-09-24                   London      3
## 421   2020-09-25                   London      1
## 422   2020-09-26                   London      0
## 423   2020-09-27                   London      0
## 424   2020-09-28                   London      1
## 425   2020-03-01                 Midlands      0
## 426   2020-03-02                 Midlands      0
## 427   2020-03-03                 Midlands      1
## 428   2020-03-04                 Midlands      0
## 429   2020-03-05                 Midlands      0
## 430   2020-03-06                 Midlands      0
## 431   2020-03-07                 Midlands      0
## 432   2020-03-08                 Midlands      2
## 433   2020-03-09                 Midlands      1
## 434   2020-03-10                 Midlands      0
## 435   2020-03-11                 Midlands      2
## 436   2020-03-12                 Midlands      6
## 437   2020-03-13                 Midlands      5
## 438   2020-03-14                 Midlands      4
## 439   2020-03-15                 Midlands      5
## 440   2020-03-16                 Midlands     11
## 441   2020-03-17                 Midlands      8
## 442   2020-03-18                 Midlands     13
## 443   2020-03-19                 Midlands      8
## 444   2020-03-20                 Midlands     28
## 445   2020-03-21                 Midlands     13
## 446   2020-03-22                 Midlands     31
## 447   2020-03-23                 Midlands     33
## 448   2020-03-24                 Midlands     41
## 449   2020-03-25                 Midlands     48
## 450   2020-03-26                 Midlands     64
## 451   2020-03-27                 Midlands     72
## 452   2020-03-28                 Midlands     89
## 453   2020-03-29                 Midlands     92
## 454   2020-03-30                 Midlands     90
## 455   2020-03-31                 Midlands    123
## 456   2020-04-01                 Midlands    140
## 457   2020-04-02                 Midlands    142
## 458   2020-04-03                 Midlands    124
## 459   2020-04-04                 Midlands    151
## 460   2020-04-05                 Midlands    164
## 461   2020-04-06                 Midlands    140
## 462   2020-04-07                 Midlands    123
## 463   2020-04-08                 Midlands    186
## 464   2020-04-09                 Midlands    139
## 465   2020-04-10                 Midlands    127
## 466   2020-04-11                 Midlands    142
## 467   2020-04-12                 Midlands    139
## 468   2020-04-13                 Midlands    120
## 469   2020-04-14                 Midlands    116
## 470   2020-04-15                 Midlands    147
## 471   2020-04-16                 Midlands    102
## 472   2020-04-17                 Midlands    118
## 473   2020-04-18                 Midlands    115
## 474   2020-04-19                 Midlands     92
## 475   2020-04-20                 Midlands    107
## 476   2020-04-21                 Midlands     86
## 477   2020-04-22                 Midlands     78
## 478   2020-04-23                 Midlands    103
## 479   2020-04-24                 Midlands     79
## 480   2020-04-25                 Midlands     72
## 481   2020-04-26                 Midlands     81
## 482   2020-04-27                 Midlands     74
## 483   2020-04-28                 Midlands     68
## 484   2020-04-29                 Midlands     53
## 485   2020-04-30                 Midlands     56
## 486   2020-05-01                 Midlands     64
## 487   2020-05-02                 Midlands     51
## 488   2020-05-03                 Midlands     52
## 489   2020-05-04                 Midlands     61
## 490   2020-05-05                 Midlands     59
## 491   2020-05-06                 Midlands     59
## 492   2020-05-07                 Midlands     48
## 493   2020-05-08                 Midlands     34
## 494   2020-05-09                 Midlands     37
## 495   2020-05-10                 Midlands     42
## 496   2020-05-11                 Midlands     33
## 497   2020-05-12                 Midlands     45
## 498   2020-05-13                 Midlands     40
## 499   2020-05-14                 Midlands     38
## 500   2020-05-15                 Midlands     40
## 501   2020-05-16                 Midlands     34
## 502   2020-05-17                 Midlands     31
## 503   2020-05-18                 Midlands     36
## 504   2020-05-19                 Midlands     35
## 505   2020-05-20                 Midlands     36
## 506   2020-05-21                 Midlands     32
## 507   2020-05-22                 Midlands     27
## 508   2020-05-23                 Midlands     34
## 509   2020-05-24                 Midlands     20
## 510   2020-05-25                 Midlands     26
## 511   2020-05-26                 Midlands     33
## 512   2020-05-27                 Midlands     29
## 513   2020-05-28                 Midlands     28
## 514   2020-05-29                 Midlands     20
## 515   2020-05-30                 Midlands     21
## 516   2020-05-31                 Midlands     22
## 517   2020-06-01                 Midlands     20
## 518   2020-06-02                 Midlands     22
## 519   2020-06-03                 Midlands     24
## 520   2020-06-04                 Midlands     16
## 521   2020-06-05                 Midlands     21
## 522   2020-06-06                 Midlands     20
## 523   2020-06-07                 Midlands     17
## 524   2020-06-08                 Midlands     16
## 525   2020-06-09                 Midlands     18
## 526   2020-06-10                 Midlands     15
## 527   2020-06-11                 Midlands     13
## 528   2020-06-12                 Midlands     12
## 529   2020-06-13                 Midlands      6
## 530   2020-06-14                 Midlands     18
## 531   2020-06-15                 Midlands     12
## 532   2020-06-16                 Midlands     15
## 533   2020-06-17                 Midlands     11
## 534   2020-06-18                 Midlands     15
## 535   2020-06-19                 Midlands     10
## 536   2020-06-20                 Midlands     15
## 537   2020-06-21                 Midlands     14
## 538   2020-06-22                 Midlands     14
## 539   2020-06-23                 Midlands     16
## 540   2020-06-24                 Midlands     15
## 541   2020-06-25                 Midlands     18
## 542   2020-06-26                 Midlands      5
## 543   2020-06-27                 Midlands      5
## 544   2020-06-28                 Midlands      7
## 545   2020-06-29                 Midlands      6
## 546   2020-06-30                 Midlands      6
## 547   2020-07-01                 Midlands      7
## 548   2020-07-02                 Midlands     10
## 549   2020-07-03                 Midlands      3
## 550   2020-07-04                 Midlands      4
## 551   2020-07-05                 Midlands      6
## 552   2020-07-06                 Midlands      5
## 553   2020-07-07                 Midlands      3
## 554   2020-07-08                 Midlands      5
## 555   2020-07-09                 Midlands      9
## 556   2020-07-10                 Midlands      3
## 557   2020-07-11                 Midlands      0
## 558   2020-07-12                 Midlands      5
## 559   2020-07-13                 Midlands      1
## 560   2020-07-14                 Midlands      1
## 561   2020-07-15                 Midlands      6
## 562   2020-07-16                 Midlands      2
## 563   2020-07-17                 Midlands      3
## 564   2020-07-18                 Midlands      3
## 565   2020-07-19                 Midlands      3
## 566   2020-07-20                 Midlands      3
## 567   2020-07-21                 Midlands      1
## 568   2020-07-22                 Midlands      2
## 569   2020-07-23                 Midlands      6
## 570   2020-07-24                 Midlands      1
## 571   2020-07-25                 Midlands      4
## 572   2020-07-26                 Midlands      4
## 573   2020-07-27                 Midlands      5
## 574   2020-07-28                 Midlands      1
## 575   2020-07-29                 Midlands      1
## 576   2020-07-30                 Midlands      1
## 577   2020-07-31                 Midlands      2
## 578   2020-08-01                 Midlands      0
## 579   2020-08-02                 Midlands      1
## 580   2020-08-03                 Midlands      2
## 581   2020-08-04                 Midlands      1
## 582   2020-08-05                 Midlands      1
## 583   2020-08-06                 Midlands      0
## 584   2020-08-07                 Midlands      3
## 585   2020-08-08                 Midlands      2
## 586   2020-08-09                 Midlands      0
## 587   2020-08-10                 Midlands      0
## 588   2020-08-11                 Midlands      2
## 589   2020-08-12                 Midlands      0
## 590   2020-08-13                 Midlands      0
## 591   2020-08-14                 Midlands      0
## 592   2020-08-15                 Midlands      1
## 593   2020-08-16                 Midlands      0
## 594   2020-08-17                 Midlands      0
## 595   2020-08-18                 Midlands      0
## 596   2020-08-19                 Midlands      0
## 597   2020-08-20                 Midlands      0
## 598   2020-08-21                 Midlands      1
## 599   2020-08-22                 Midlands      0
## 600   2020-08-23                 Midlands      0
## 601   2020-08-24                 Midlands      0
## 602   2020-08-25                 Midlands      2
## 603   2020-08-26                 Midlands      3
## 604   2020-08-27                 Midlands      2
## 605   2020-08-28                 Midlands      1
## 606   2020-08-29                 Midlands      0
## 607   2020-08-30                 Midlands      2
## 608   2020-08-31                 Midlands      1
## 609   2020-09-01                 Midlands      0
## 610   2020-09-02                 Midlands      2
## 611   2020-09-03                 Midlands      0
## 612   2020-09-04                 Midlands      0
## 613   2020-09-05                 Midlands      0
## 614   2020-09-06                 Midlands      1
## 615   2020-09-07                 Midlands      1
## 616   2020-09-08                 Midlands      3
## 617   2020-09-09                 Midlands      0
## 618   2020-09-10                 Midlands      1
## 619   2020-09-11                 Midlands      1
## 620   2020-09-12                 Midlands      2
## 621   2020-09-13                 Midlands      4
## 622   2020-09-14                 Midlands      1
## 623   2020-09-15                 Midlands      2
## 624   2020-09-16                 Midlands      3
## 625   2020-09-17                 Midlands      2
## 626   2020-09-18                 Midlands      4
## 627   2020-09-19                 Midlands      2
## 628   2020-09-20                 Midlands      6
## 629   2020-09-21                 Midlands      3
## 630   2020-09-22                 Midlands      4
## 631   2020-09-23                 Midlands     10
## 632   2020-09-24                 Midlands      5
## 633   2020-09-25                 Midlands      3
## 634   2020-09-26                 Midlands      3
## 635   2020-09-27                 Midlands      5
## 636   2020-09-28                 Midlands      0
## 637   2020-03-01 North East and Yorkshire      0
## 638   2020-03-02 North East and Yorkshire      0
## 639   2020-03-03 North East and Yorkshire      0
## 640   2020-03-04 North East and Yorkshire      0
## 641   2020-03-05 North East and Yorkshire      0
## 642   2020-03-06 North East and Yorkshire      0
## 643   2020-03-07 North East and Yorkshire      0
## 644   2020-03-08 North East and Yorkshire      0
## 645   2020-03-09 North East and Yorkshire      0
## 646   2020-03-10 North East and Yorkshire      0
## 647   2020-03-11 North East and Yorkshire      0
## 648   2020-03-12 North East and Yorkshire      0
## 649   2020-03-13 North East and Yorkshire      0
## 650   2020-03-14 North East and Yorkshire      0
## 651   2020-03-15 North East and Yorkshire      2
## 652   2020-03-16 North East and Yorkshire      3
## 653   2020-03-17 North East and Yorkshire      1
## 654   2020-03-18 North East and Yorkshire      2
## 655   2020-03-19 North East and Yorkshire      6
## 656   2020-03-20 North East and Yorkshire      5
## 657   2020-03-21 North East and Yorkshire      6
## 658   2020-03-22 North East and Yorkshire      7
## 659   2020-03-23 North East and Yorkshire      9
## 660   2020-03-24 North East and Yorkshire      8
## 661   2020-03-25 North East and Yorkshire     18
## 662   2020-03-26 North East and Yorkshire     21
## 663   2020-03-27 North East and Yorkshire     28
## 664   2020-03-28 North East and Yorkshire     35
## 665   2020-03-29 North East and Yorkshire     38
## 666   2020-03-30 North East and Yorkshire     64
## 667   2020-03-31 North East and Yorkshire     60
## 668   2020-04-01 North East and Yorkshire     67
## 669   2020-04-02 North East and Yorkshire     75
## 670   2020-04-03 North East and Yorkshire    100
## 671   2020-04-04 North East and Yorkshire    105
## 672   2020-04-05 North East and Yorkshire     92
## 673   2020-04-06 North East and Yorkshire     96
## 674   2020-04-07 North East and Yorkshire    102
## 675   2020-04-08 North East and Yorkshire    107
## 676   2020-04-09 North East and Yorkshire    111
## 677   2020-04-10 North East and Yorkshire    117
## 678   2020-04-11 North East and Yorkshire     98
## 679   2020-04-12 North East and Yorkshire     84
## 680   2020-04-13 North East and Yorkshire     94
## 681   2020-04-14 North East and Yorkshire    107
## 682   2020-04-15 North East and Yorkshire     96
## 683   2020-04-16 North East and Yorkshire    103
## 684   2020-04-17 North East and Yorkshire     88
## 685   2020-04-18 North East and Yorkshire     95
## 686   2020-04-19 North East and Yorkshire     88
## 687   2020-04-20 North East and Yorkshire    100
## 688   2020-04-21 North East and Yorkshire     76
## 689   2020-04-22 North East and Yorkshire     84
## 690   2020-04-23 North East and Yorkshire     63
## 691   2020-04-24 North East and Yorkshire     72
## 692   2020-04-25 North East and Yorkshire     69
## 693   2020-04-26 North East and Yorkshire     65
## 694   2020-04-27 North East and Yorkshire     65
## 695   2020-04-28 North East and Yorkshire     57
## 696   2020-04-29 North East and Yorkshire     69
## 697   2020-04-30 North East and Yorkshire     57
## 698   2020-05-01 North East and Yorkshire     64
## 699   2020-05-02 North East and Yorkshire     48
## 700   2020-05-03 North East and Yorkshire     40
## 701   2020-05-04 North East and Yorkshire     49
## 702   2020-05-05 North East and Yorkshire     40
## 703   2020-05-06 North East and Yorkshire     51
## 704   2020-05-07 North East and Yorkshire     45
## 705   2020-05-08 North East and Yorkshire     42
## 706   2020-05-09 North East and Yorkshire     44
## 707   2020-05-10 North East and Yorkshire     40
## 708   2020-05-11 North East and Yorkshire     29
## 709   2020-05-12 North East and Yorkshire     27
## 710   2020-05-13 North East and Yorkshire     28
## 711   2020-05-14 North East and Yorkshire     31
## 712   2020-05-15 North East and Yorkshire     32
## 713   2020-05-16 North East and Yorkshire     35
## 714   2020-05-17 North East and Yorkshire     26
## 715   2020-05-18 North East and Yorkshire     30
## 716   2020-05-19 North East and Yorkshire     27
## 717   2020-05-20 North East and Yorkshire     22
## 718   2020-05-21 North East and Yorkshire     33
## 719   2020-05-22 North East and Yorkshire     22
## 720   2020-05-23 North East and Yorkshire     18
## 721   2020-05-24 North East and Yorkshire     26
## 722   2020-05-25 North East and Yorkshire     21
## 723   2020-05-26 North East and Yorkshire     21
## 724   2020-05-27 North East and Yorkshire     22
## 725   2020-05-28 North East and Yorkshire     21
## 726   2020-05-29 North East and Yorkshire     25
## 727   2020-05-30 North East and Yorkshire     20
## 728   2020-05-31 North East and Yorkshire     20
## 729   2020-06-01 North East and Yorkshire     17
## 730   2020-06-02 North East and Yorkshire     23
## 731   2020-06-03 North East and Yorkshire     23
## 732   2020-06-04 North East and Yorkshire     17
## 733   2020-06-05 North East and Yorkshire     18
## 734   2020-06-06 North East and Yorkshire     21
## 735   2020-06-07 North East and Yorkshire     14
## 736   2020-06-08 North East and Yorkshire     11
## 737   2020-06-09 North East and Yorkshire     12
## 738   2020-06-10 North East and Yorkshire     19
## 739   2020-06-11 North East and Yorkshire      7
## 740   2020-06-12 North East and Yorkshire      9
## 741   2020-06-13 North East and Yorkshire     10
## 742   2020-06-14 North East and Yorkshire     11
## 743   2020-06-15 North East and Yorkshire      9
## 744   2020-06-16 North East and Yorkshire     10
## 745   2020-06-17 North East and Yorkshire      9
## 746   2020-06-18 North East and Yorkshire     11
## 747   2020-06-19 North East and Yorkshire      6
## 748   2020-06-20 North East and Yorkshire      5
## 749   2020-06-21 North East and Yorkshire      4
## 750   2020-06-22 North East and Yorkshire      7
## 751   2020-06-23 North East and Yorkshire      8
## 752   2020-06-24 North East and Yorkshire     10
## 753   2020-06-25 North East and Yorkshire      4
## 754   2020-06-26 North East and Yorkshire      8
## 755   2020-06-27 North East and Yorkshire      4
## 756   2020-06-28 North East and Yorkshire      5
## 757   2020-06-29 North East and Yorkshire      2
## 758   2020-06-30 North East and Yorkshire      7
## 759   2020-07-01 North East and Yorkshire      1
## 760   2020-07-02 North East and Yorkshire      4
## 761   2020-07-03 North East and Yorkshire      4
## 762   2020-07-04 North East and Yorkshire      4
## 763   2020-07-05 North East and Yorkshire      3
## 764   2020-07-06 North East and Yorkshire      2
## 765   2020-07-07 North East and Yorkshire      3
## 766   2020-07-08 North East and Yorkshire      3
## 767   2020-07-09 North East and Yorkshire      0
## 768   2020-07-10 North East and Yorkshire      3
## 769   2020-07-11 North East and Yorkshire      1
## 770   2020-07-12 North East and Yorkshire      4
## 771   2020-07-13 North East and Yorkshire      1
## 772   2020-07-14 North East and Yorkshire      1
## 773   2020-07-15 North East and Yorkshire      2
## 774   2020-07-16 North East and Yorkshire      3
## 775   2020-07-17 North East and Yorkshire      1
## 776   2020-07-18 North East and Yorkshire      2
## 777   2020-07-19 North East and Yorkshire      2
## 778   2020-07-20 North East and Yorkshire      1
## 779   2020-07-21 North East and Yorkshire      1
## 780   2020-07-22 North East and Yorkshire      6
## 781   2020-07-23 North East and Yorkshire      0
## 782   2020-07-24 North East and Yorkshire      1
## 783   2020-07-25 North East and Yorkshire      5
## 784   2020-07-26 North East and Yorkshire      1
## 785   2020-07-27 North East and Yorkshire      0
## 786   2020-07-28 North East and Yorkshire      2
## 787   2020-07-29 North East and Yorkshire      1
## 788   2020-07-30 North East and Yorkshire      0
## 789   2020-07-31 North East and Yorkshire      1
## 790   2020-08-01 North East and Yorkshire      3
## 791   2020-08-02 North East and Yorkshire      2
## 792   2020-08-03 North East and Yorkshire      1
## 793   2020-08-04 North East and Yorkshire      2
## 794   2020-08-05 North East and Yorkshire      1
## 795   2020-08-06 North East and Yorkshire      4
## 796   2020-08-07 North East and Yorkshire      0
## 797   2020-08-08 North East and Yorkshire      1
## 798   2020-08-09 North East and Yorkshire      2
## 799   2020-08-10 North East and Yorkshire      2
## 800   2020-08-11 North East and Yorkshire      2
## 801   2020-08-12 North East and Yorkshire      2
## 802   2020-08-13 North East and Yorkshire      0
## 803   2020-08-14 North East and Yorkshire      1
## 804   2020-08-15 North East and Yorkshire      1
## 805   2020-08-16 North East and Yorkshire      0
## 806   2020-08-17 North East and Yorkshire      4
## 807   2020-08-18 North East and Yorkshire      1
## 808   2020-08-19 North East and Yorkshire      0
## 809   2020-08-20 North East and Yorkshire      0
## 810   2020-08-21 North East and Yorkshire      1
## 811   2020-08-22 North East and Yorkshire      1
## 812   2020-08-23 North East and Yorkshire      2
## 813   2020-08-24 North East and Yorkshire      0
## 814   2020-08-25 North East and Yorkshire      1
## 815   2020-08-26 North East and Yorkshire      2
## 816   2020-08-27 North East and Yorkshire      1
## 817   2020-08-28 North East and Yorkshire      0
## 818   2020-08-29 North East and Yorkshire      1
## 819   2020-08-30 North East and Yorkshire      0
## 820   2020-08-31 North East and Yorkshire      0
## 821   2020-09-01 North East and Yorkshire      2
## 822   2020-09-02 North East and Yorkshire      3
## 823   2020-09-03 North East and Yorkshire      0
## 824   2020-09-04 North East and Yorkshire      1
## 825   2020-09-05 North East and Yorkshire      2
## 826   2020-09-06 North East and Yorkshire      1
## 827   2020-09-07 North East and Yorkshire      0
## 828   2020-09-08 North East and Yorkshire      1
## 829   2020-09-09 North East and Yorkshire      2
## 830   2020-09-10 North East and Yorkshire      0
## 831   2020-09-11 North East and Yorkshire      3
## 832   2020-09-12 North East and Yorkshire      1
## 833   2020-09-13 North East and Yorkshire      3
## 834   2020-09-14 North East and Yorkshire      4
## 835   2020-09-15 North East and Yorkshire      3
## 836   2020-09-16 North East and Yorkshire      3
## 837   2020-09-17 North East and Yorkshire      5
## 838   2020-09-18 North East and Yorkshire      5
## 839   2020-09-19 North East and Yorkshire      2
## 840   2020-09-20 North East and Yorkshire      9
## 841   2020-09-21 North East and Yorkshire      6
## 842   2020-09-22 North East and Yorkshire      4
## 843   2020-09-23 North East and Yorkshire      6
## 844   2020-09-24 North East and Yorkshire      3
## 845   2020-09-25 North East and Yorkshire      5
## 846   2020-09-26 North East and Yorkshire      6
## 847   2020-09-27 North East and Yorkshire      9
## 848   2020-09-28 North East and Yorkshire      2
## 849   2020-03-01               North West      0
## 850   2020-03-02               North West      0
## 851   2020-03-03               North West      0
## 852   2020-03-04               North West      0
## 853   2020-03-05               North West      1
## 854   2020-03-06               North West      0
## 855   2020-03-07               North West      0
## 856   2020-03-08               North West      1
## 857   2020-03-09               North West      0
## 858   2020-03-10               North West      0
## 859   2020-03-11               North West      0
## 860   2020-03-12               North West      2
## 861   2020-03-13               North West      3
## 862   2020-03-14               North West      1
## 863   2020-03-15               North West      4
## 864   2020-03-16               North West      2
## 865   2020-03-17               North West      4
## 866   2020-03-18               North West      6
## 867   2020-03-19               North West      7
## 868   2020-03-20               North West     10
## 869   2020-03-21               North West     11
## 870   2020-03-22               North West     13
## 871   2020-03-23               North West     15
## 872   2020-03-24               North West     21
## 873   2020-03-25               North West     21
## 874   2020-03-26               North West     29
## 875   2020-03-27               North West     36
## 876   2020-03-28               North West     28
## 877   2020-03-29               North West     46
## 878   2020-03-30               North West     67
## 879   2020-03-31               North West     52
## 880   2020-04-01               North West     86
## 881   2020-04-02               North West     96
## 882   2020-04-03               North West     95
## 883   2020-04-04               North West     98
## 884   2020-04-05               North West    102
## 885   2020-04-06               North West    100
## 886   2020-04-07               North West    135
## 887   2020-04-08               North West    127
## 888   2020-04-09               North West    119
## 889   2020-04-10               North West    117
## 890   2020-04-11               North West    138
## 891   2020-04-12               North West    125
## 892   2020-04-13               North West    129
## 893   2020-04-14               North West    131
## 894   2020-04-15               North West    114
## 895   2020-04-16               North West    135
## 896   2020-04-17               North West     98
## 897   2020-04-18               North West    113
## 898   2020-04-19               North West     71
## 899   2020-04-20               North West     83
## 900   2020-04-21               North West     76
## 901   2020-04-22               North West     86
## 902   2020-04-23               North West     85
## 903   2020-04-24               North West     66
## 904   2020-04-25               North West     66
## 905   2020-04-26               North West     55
## 906   2020-04-27               North West     54
## 907   2020-04-28               North West     57
## 908   2020-04-29               North West     63
## 909   2020-04-30               North West     60
## 910   2020-05-01               North West     45
## 911   2020-05-02               North West     56
## 912   2020-05-03               North West     55
## 913   2020-05-04               North West     48
## 914   2020-05-05               North West     48
## 915   2020-05-06               North West     44
## 916   2020-05-07               North West     49
## 917   2020-05-08               North West     42
## 918   2020-05-09               North West     31
## 919   2020-05-10               North West     42
## 920   2020-05-11               North West     35
## 921   2020-05-12               North West     38
## 922   2020-05-13               North West     25
## 923   2020-05-14               North West     26
## 924   2020-05-15               North West     33
## 925   2020-05-16               North West     32
## 926   2020-05-17               North West     24
## 927   2020-05-18               North West     31
## 928   2020-05-19               North West     35
## 929   2020-05-20               North West     27
## 930   2020-05-21               North West     27
## 931   2020-05-22               North West     26
## 932   2020-05-23               North West     31
## 933   2020-05-24               North West     26
## 934   2020-05-25               North West     31
## 935   2020-05-26               North West     27
## 936   2020-05-27               North West     27
## 937   2020-05-28               North West     28
## 938   2020-05-29               North West     20
## 939   2020-05-30               North West     19
## 940   2020-05-31               North West     13
## 941   2020-06-01               North West     12
## 942   2020-06-02               North West     27
## 943   2020-06-03               North West     22
## 944   2020-06-04               North West     22
## 945   2020-06-05               North West     16
## 946   2020-06-06               North West     26
## 947   2020-06-07               North West     20
## 948   2020-06-08               North West     23
## 949   2020-06-09               North West     17
## 950   2020-06-10               North West     16
## 951   2020-06-11               North West     16
## 952   2020-06-12               North West     11
## 953   2020-06-13               North West     10
## 954   2020-06-14               North West     15
## 955   2020-06-15               North West     16
## 956   2020-06-16               North West     16
## 957   2020-06-17               North West     13
## 958   2020-06-18               North West     14
## 959   2020-06-19               North West      7
## 960   2020-06-20               North West     11
## 961   2020-06-21               North West      8
## 962   2020-06-22               North West     11
## 963   2020-06-23               North West     13
## 964   2020-06-24               North West     13
## 965   2020-06-25               North West     15
## 966   2020-06-26               North West      6
## 967   2020-06-27               North West      7
## 968   2020-06-28               North West      9
## 969   2020-06-29               North West      9
## 970   2020-06-30               North West      7
## 971   2020-07-01               North West      3
## 972   2020-07-02               North West      6
## 973   2020-07-03               North West      7
## 974   2020-07-04               North West      4
## 975   2020-07-05               North West      6
## 976   2020-07-06               North West      9
## 977   2020-07-07               North West      8
## 978   2020-07-08               North West      5
## 979   2020-07-09               North West     10
## 980   2020-07-10               North West      2
## 981   2020-07-11               North West      5
## 982   2020-07-12               North West      0
## 983   2020-07-13               North West      6
## 984   2020-07-14               North West      4
## 985   2020-07-15               North West      5
## 986   2020-07-16               North West      2
## 987   2020-07-17               North West      4
## 988   2020-07-18               North West      5
## 989   2020-07-19               North West      3
## 990   2020-07-20               North West      0
## 991   2020-07-21               North West      2
## 992   2020-07-22               North West      3
## 993   2020-07-23               North West      3
## 994   2020-07-24               North West      1
## 995   2020-07-25               North West      1
## 996   2020-07-26               North West      3
## 997   2020-07-27               North West      1
## 998   2020-07-28               North West      1
## 999   2020-07-29               North West      2
## 1000  2020-07-30               North West      2
## 1001  2020-07-31               North West      0
## 1002  2020-08-01               North West      2
## 1003  2020-08-02               North West      1
## 1004  2020-08-03               North West      8
## 1005  2020-08-04               North West      3
## 1006  2020-08-05               North West      2
## 1007  2020-08-06               North West      2
## 1008  2020-08-07               North West      2
## 1009  2020-08-08               North West      2
## 1010  2020-08-09               North West      3
## 1011  2020-08-10               North West      2
## 1012  2020-08-11               North West      3
## 1013  2020-08-12               North West      0
## 1014  2020-08-13               North West      2
## 1015  2020-08-14               North West      2
## 1016  2020-08-15               North West      6
## 1017  2020-08-16               North West      2
## 1018  2020-08-17               North West      1
## 1019  2020-08-18               North West      2
## 1020  2020-08-19               North West      1
## 1021  2020-08-20               North West      1
## 1022  2020-08-21               North West      4
## 1023  2020-08-22               North West      3
## 1024  2020-08-23               North West      5
## 1025  2020-08-24               North West      4
## 1026  2020-08-25               North West      3
## 1027  2020-08-26               North West      4
## 1028  2020-08-27               North West      1
## 1029  2020-08-28               North West      2
## 1030  2020-08-29               North West      0
## 1031  2020-08-30               North West      2
## 1032  2020-08-31               North West      3
## 1033  2020-09-01               North West      0
## 1034  2020-09-02               North West      2
## 1035  2020-09-03               North West      1
## 1036  2020-09-04               North West      3
## 1037  2020-09-05               North West      6
## 1038  2020-09-06               North West      1
## 1039  2020-09-07               North West      8
## 1040  2020-09-08               North West      6
## 1041  2020-09-09               North West      5
## 1042  2020-09-10               North West      4
## 1043  2020-09-11               North West      0
## 1044  2020-09-12               North West      3
## 1045  2020-09-13               North West      2
## 1046  2020-09-14               North West      4
## 1047  2020-09-15               North West      4
## 1048  2020-09-16               North West      5
## 1049  2020-09-17               North West      7
## 1050  2020-09-18               North West      6
## 1051  2020-09-19               North West      3
## 1052  2020-09-20               North West      2
## 1053  2020-09-21               North West      1
## 1054  2020-09-22               North West      8
## 1055  2020-09-23               North West     12
## 1056  2020-09-24               North West      7
## 1057  2020-09-25               North West      4
## 1058  2020-09-26               North West     10
## 1059  2020-09-27               North West      7
## 1060  2020-09-28               North West      3
## 1061  2020-03-01               South East      0
## 1062  2020-03-02               South East      0
## 1063  2020-03-03               South East      1
## 1064  2020-03-04               South East      0
## 1065  2020-03-05               South East      1
## 1066  2020-03-06               South East      0
## 1067  2020-03-07               South East      0
## 1068  2020-03-08               South East      1
## 1069  2020-03-09               South East      1
## 1070  2020-03-10               South East      1
## 1071  2020-03-11               South East      1
## 1072  2020-03-12               South East      0
## 1073  2020-03-13               South East      1
## 1074  2020-03-14               South East      1
## 1075  2020-03-15               South East      5
## 1076  2020-03-16               South East      8
## 1077  2020-03-17               South East      7
## 1078  2020-03-18               South East     10
## 1079  2020-03-19               South East      9
## 1080  2020-03-20               South East     13
## 1081  2020-03-21               South East      7
## 1082  2020-03-22               South East     25
## 1083  2020-03-23               South East     20
## 1084  2020-03-24               South East     22
## 1085  2020-03-25               South East     29
## 1086  2020-03-26               South East     35
## 1087  2020-03-27               South East     35
## 1088  2020-03-28               South East     36
## 1089  2020-03-29               South East     55
## 1090  2020-03-30               South East     58
## 1091  2020-03-31               South East     65
## 1092  2020-04-01               South East     66
## 1093  2020-04-02               South East     55
## 1094  2020-04-03               South East     72
## 1095  2020-04-04               South East     80
## 1096  2020-04-05               South East     82
## 1097  2020-04-06               South East     88
## 1098  2020-04-07               South East    100
## 1099  2020-04-08               South East     83
## 1100  2020-04-09               South East    104
## 1101  2020-04-10               South East     88
## 1102  2020-04-11               South East     88
## 1103  2020-04-12               South East     88
## 1104  2020-04-13               South East     84
## 1105  2020-04-14               South East     65
## 1106  2020-04-15               South East     72
## 1107  2020-04-16               South East     56
## 1108  2020-04-17               South East     86
## 1109  2020-04-18               South East     57
## 1110  2020-04-19               South East     70
## 1111  2020-04-20               South East     87
## 1112  2020-04-21               South East     51
## 1113  2020-04-22               South East     54
## 1114  2020-04-23               South East     57
## 1115  2020-04-24               South East     64
## 1116  2020-04-25               South East     51
## 1117  2020-04-26               South East     51
## 1118  2020-04-27               South East     41
## 1119  2020-04-28               South East     40
## 1120  2020-04-29               South East     47
## 1121  2020-04-30               South East     29
## 1122  2020-05-01               South East     37
## 1123  2020-05-02               South East     36
## 1124  2020-05-03               South East     17
## 1125  2020-05-04               South East     35
## 1126  2020-05-05               South East     29
## 1127  2020-05-06               South East     25
## 1128  2020-05-07               South East     27
## 1129  2020-05-08               South East     26
## 1130  2020-05-09               South East     28
## 1131  2020-05-10               South East     19
## 1132  2020-05-11               South East     25
## 1133  2020-05-12               South East     27
## 1134  2020-05-13               South East     18
## 1135  2020-05-14               South East     32
## 1136  2020-05-15               South East     25
## 1137  2020-05-16               South East     22
## 1138  2020-05-17               South East     18
## 1139  2020-05-18               South East     22
## 1140  2020-05-19               South East     12
## 1141  2020-05-20               South East     22
## 1142  2020-05-21               South East     15
## 1143  2020-05-22               South East     17
## 1144  2020-05-23               South East     21
## 1145  2020-05-24               South East     17
## 1146  2020-05-25               South East     13
## 1147  2020-05-26               South East     19
## 1148  2020-05-27               South East     19
## 1149  2020-05-28               South East     12
## 1150  2020-05-29               South East     22
## 1151  2020-05-30               South East      8
## 1152  2020-05-31               South East     12
## 1153  2020-06-01               South East     11
## 1154  2020-06-02               South East     13
## 1155  2020-06-03               South East     18
## 1156  2020-06-04               South East     11
## 1157  2020-06-05               South East     11
## 1158  2020-06-06               South East     10
## 1159  2020-06-07               South East     12
## 1160  2020-06-08               South East      8
## 1161  2020-06-09               South East     10
## 1162  2020-06-10               South East     11
## 1163  2020-06-11               South East      5
## 1164  2020-06-12               South East      6
## 1165  2020-06-13               South East      7
## 1166  2020-06-14               South East      7
## 1167  2020-06-15               South East      8
## 1168  2020-06-16               South East     14
## 1169  2020-06-17               South East      9
## 1170  2020-06-18               South East      4
## 1171  2020-06-19               South East      7
## 1172  2020-06-20               South East      5
## 1173  2020-06-21               South East      3
## 1174  2020-06-22               South East      2
## 1175  2020-06-23               South East      9
## 1176  2020-06-24               South East      7
## 1177  2020-06-25               South East      5
## 1178  2020-06-26               South East      8
## 1179  2020-06-27               South East      9
## 1180  2020-06-28               South East      6
## 1181  2020-06-29               South East      5
## 1182  2020-06-30               South East      5
## 1183  2020-07-01               South East      2
## 1184  2020-07-02               South East      8
## 1185  2020-07-03               South East      3
## 1186  2020-07-04               South East      6
## 1187  2020-07-05               South East      5
## 1188  2020-07-06               South East      4
## 1189  2020-07-07               South East      6
## 1190  2020-07-08               South East      3
## 1191  2020-07-09               South East      7
## 1192  2020-07-10               South East      3
## 1193  2020-07-11               South East      4
## 1194  2020-07-12               South East      4
## 1195  2020-07-13               South East      5
## 1196  2020-07-14               South East      5
## 1197  2020-07-15               South East      6
## 1198  2020-07-16               South East      3
## 1199  2020-07-17               South East      1
## 1200  2020-07-18               South East      5
## 1201  2020-07-19               South East      2
## 1202  2020-07-20               South East      6
## 1203  2020-07-21               South East      4
## 1204  2020-07-22               South East      2
## 1205  2020-07-23               South East      3
## 1206  2020-07-24               South East      1
## 1207  2020-07-25               South East      1
## 1208  2020-07-26               South East      3
## 1209  2020-07-27               South East      1
## 1210  2020-07-28               South East      3
## 1211  2020-07-29               South East      2
## 1212  2020-07-30               South East      3
## 1213  2020-07-31               South East      1
## 1214  2020-08-01               South East      2
## 1215  2020-08-02               South East      4
## 1216  2020-08-03               South East      0
## 1217  2020-08-04               South East      0
## 1218  2020-08-05               South East      0
## 1219  2020-08-06               South East      2
## 1220  2020-08-07               South East      0
## 1221  2020-08-08               South East      2
## 1222  2020-08-09               South East      0
## 1223  2020-08-10               South East      2
## 1224  2020-08-11               South East      1
## 1225  2020-08-12               South East      1
## 1226  2020-08-13               South East      0
## 1227  2020-08-14               South East      0
## 1228  2020-08-15               South East      2
## 1229  2020-08-16               South East      1
## 1230  2020-08-17               South East      0
## 1231  2020-08-18               South East      2
## 1232  2020-08-19               South East      1
## 1233  2020-08-20               South East      0
## 1234  2020-08-21               South East      0
## 1235  2020-08-22               South East      0
## 1236  2020-08-23               South East      1
## 1237  2020-08-24               South East      0
## 1238  2020-08-25               South East      1
## 1239  2020-08-26               South East      0
## 1240  2020-08-27               South East      1
## 1241  2020-08-28               South East      1
## 1242  2020-08-29               South East      1
## 1243  2020-08-30               South East      0
## 1244  2020-08-31               South East      2
## 1245  2020-09-01               South East      1
## 1246  2020-09-02               South East      1
## 1247  2020-09-03               South East      0
## 1248  2020-09-04               South East      1
## 1249  2020-09-05               South East      0
## 1250  2020-09-06               South East      1
## 1251  2020-09-07               South East      0
## 1252  2020-09-08               South East      0
## 1253  2020-09-09               South East      0
## 1254  2020-09-10               South East      1
## 1255  2020-09-11               South East      1
## 1256  2020-09-12               South East      0
## 1257  2020-09-13               South East      3
## 1258  2020-09-14               South East      1
## 1259  2020-09-15               South East      2
## 1260  2020-09-16               South East      2
## 1261  2020-09-17               South East      3
## 1262  2020-09-18               South East      1
## 1263  2020-09-19               South East      1
## 1264  2020-09-20               South East      0
## 1265  2020-09-21               South East      3
## 1266  2020-09-22               South East      0
## 1267  2020-09-23               South East      2
## 1268  2020-09-24               South East      0
## 1269  2020-09-25               South East      3
## 1270  2020-09-26               South East      2
## 1271  2020-09-27               South East      0
## 1272  2020-09-28               South East      0
## 1273  2020-03-01               South West      0
## 1274  2020-03-02               South West      0
## 1275  2020-03-03               South West      0
## 1276  2020-03-04               South West      0
## 1277  2020-03-05               South West      0
## 1278  2020-03-06               South West      0
## 1279  2020-03-07               South West      0
## 1280  2020-03-08               South West      0
## 1281  2020-03-09               South West      0
## 1282  2020-03-10               South West      0
## 1283  2020-03-11               South West      1
## 1284  2020-03-12               South West      0
## 1285  2020-03-13               South West      0
## 1286  2020-03-14               South West      1
## 1287  2020-03-15               South West      0
## 1288  2020-03-16               South West      0
## 1289  2020-03-17               South West      2
## 1290  2020-03-18               South West      2
## 1291  2020-03-19               South West      4
## 1292  2020-03-20               South West      3
## 1293  2020-03-21               South West      6
## 1294  2020-03-22               South West      7
## 1295  2020-03-23               South West      8
## 1296  2020-03-24               South West      7
## 1297  2020-03-25               South West      9
## 1298  2020-03-26               South West     11
## 1299  2020-03-27               South West     13
## 1300  2020-03-28               South West     21
## 1301  2020-03-29               South West     18
## 1302  2020-03-30               South West     23
## 1303  2020-03-31               South West     23
## 1304  2020-04-01               South West     21
## 1305  2020-04-02               South West     23
## 1306  2020-04-03               South West     30
## 1307  2020-04-04               South West     42
## 1308  2020-04-05               South West     32
## 1309  2020-04-06               South West     34
## 1310  2020-04-07               South West     39
## 1311  2020-04-08               South West     47
## 1312  2020-04-09               South West     24
## 1313  2020-04-10               South West     46
## 1314  2020-04-11               South West     43
## 1315  2020-04-12               South West     23
## 1316  2020-04-13               South West     27
## 1317  2020-04-14               South West     24
## 1318  2020-04-15               South West     32
## 1319  2020-04-16               South West     29
## 1320  2020-04-17               South West     33
## 1321  2020-04-18               South West     25
## 1322  2020-04-19               South West     31
## 1323  2020-04-20               South West     26
## 1324  2020-04-21               South West     26
## 1325  2020-04-22               South West     23
## 1326  2020-04-23               South West     17
## 1327  2020-04-24               South West     19
## 1328  2020-04-25               South West     15
## 1329  2020-04-26               South West     27
## 1330  2020-04-27               South West     13
## 1331  2020-04-28               South West     17
## 1332  2020-04-29               South West     15
## 1333  2020-04-30               South West     26
## 1334  2020-05-01               South West      6
## 1335  2020-05-02               South West      7
## 1336  2020-05-03               South West     10
## 1337  2020-05-04               South West     17
## 1338  2020-05-05               South West     14
## 1339  2020-05-06               South West     19
## 1340  2020-05-07               South West     16
## 1341  2020-05-08               South West      6
## 1342  2020-05-09               South West     11
## 1343  2020-05-10               South West      5
## 1344  2020-05-11               South West      8
## 1345  2020-05-12               South West      7
## 1346  2020-05-13               South West      7
## 1347  2020-05-14               South West      6
## 1348  2020-05-15               South West      4
## 1349  2020-05-16               South West      4
## 1350  2020-05-17               South West      6
## 1351  2020-05-18               South West      4
## 1352  2020-05-19               South West      6
## 1353  2020-05-20               South West      1
## 1354  2020-05-21               South West      9
## 1355  2020-05-22               South West      7
## 1356  2020-05-23               South West      6
## 1357  2020-05-24               South West      3
## 1358  2020-05-25               South West      8
## 1359  2020-05-26               South West     11
## 1360  2020-05-27               South West      5
## 1361  2020-05-28               South West     10
## 1362  2020-05-29               South West      7
## 1363  2020-05-30               South West      3
## 1364  2020-05-31               South West      2
## 1365  2020-06-01               South West      7
## 1366  2020-06-02               South West      2
## 1367  2020-06-03               South West      7
## 1368  2020-06-04               South West      2
## 1369  2020-06-05               South West      2
## 1370  2020-06-06               South West      1
## 1371  2020-06-07               South West      3
## 1372  2020-06-08               South West      3
## 1373  2020-06-09               South West      0
## 1374  2020-06-10               South West      1
## 1375  2020-06-11               South West      2
## 1376  2020-06-12               South West      2
## 1377  2020-06-13               South West      2
## 1378  2020-06-14               South West      0
## 1379  2020-06-15               South West      2
## 1380  2020-06-16               South West      2
## 1381  2020-06-17               South West      0
## 1382  2020-06-18               South West      0
## 1383  2020-06-19               South West      0
## 1384  2020-06-20               South West      2
## 1385  2020-06-21               South West      0
## 1386  2020-06-22               South West      1
## 1387  2020-06-23               South West      1
## 1388  2020-06-24               South West      1
## 1389  2020-06-25               South West      0
## 1390  2020-06-26               South West      3
## 1391  2020-06-27               South West      0
## 1392  2020-06-28               South West      0
## 1393  2020-06-29               South West      1
## 1394  2020-06-30               South West      0
## 1395  2020-07-01               South West      0
## 1396  2020-07-02               South West      0
## 1397  2020-07-03               South West      0
## 1398  2020-07-04               South West      0
## 1399  2020-07-05               South West      1
## 1400  2020-07-06               South West      0
## 1401  2020-07-07               South West      0
## 1402  2020-07-08               South West      2
## 1403  2020-07-09               South West      0
## 1404  2020-07-10               South West      1
## 1405  2020-07-11               South West      0
## 1406  2020-07-12               South West      0
## 1407  2020-07-13               South West      1
## 1408  2020-07-14               South West      0
## 1409  2020-07-15               South West      0
## 1410  2020-07-16               South West      0
## 1411  2020-07-17               South West      1
## 1412  2020-07-18               South West      0
## 1413  2020-07-19               South West      0
## 1414  2020-07-20               South West      0
## 1415  2020-07-21               South West      0
## 1416  2020-07-22               South West      0
## 1417  2020-07-23               South West      0
## 1418  2020-07-24               South West      0
## 1419  2020-07-25               South West      0
## 1420  2020-07-26               South West      0
## 1421  2020-07-27               South West      0
## 1422  2020-07-28               South West      0
## 1423  2020-07-29               South West      0
## 1424  2020-07-30               South West      1
## 1425  2020-07-31               South West      0
## 1426  2020-08-01               South West      0
## 1427  2020-08-02               South West      0
## 1428  2020-08-03               South West      0
## 1429  2020-08-04               South West      0
## 1430  2020-08-05               South West      0
## 1431  2020-08-06               South West      0
## 1432  2020-08-07               South West      0
## 1433  2020-08-08               South West      0
## 1434  2020-08-09               South West      0
## 1435  2020-08-10               South West      0
## 1436  2020-08-11               South West      0
## 1437  2020-08-12               South West      0
## 1438  2020-08-13               South West      0
## 1439  2020-08-14               South West      1
## 1440  2020-08-15               South West      0
## 1441  2020-08-16               South West      0
## 1442  2020-08-17               South West      2
## 1443  2020-08-18               South West      0
## 1444  2020-08-19               South West      0
## 1445  2020-08-20               South West      0
## 1446  2020-08-21               South West      0
## 1447  2020-08-22               South West      0
## 1448  2020-08-23               South West      0
## 1449  2020-08-24               South West      0
## 1450  2020-08-25               South West      1
## 1451  2020-08-26               South West      0
## 1452  2020-08-27               South West      1
## 1453  2020-08-28               South West      0
## 1454  2020-08-29               South West      0
## 1455  2020-08-30               South West      0
## 1456  2020-08-31               South West      0
## 1457  2020-09-01               South West      0
## 1458  2020-09-02               South West      0
## 1459  2020-09-03               South West      0
## 1460  2020-09-04               South West      0
## 1461  2020-09-05               South West      0
## 1462  2020-09-06               South West      0
## 1463  2020-09-07               South West      0
## 1464  2020-09-08               South West      1
## 1465  2020-09-09               South West      0
## 1466  2020-09-10               South West      0
## 1467  2020-09-11               South West      0
## 1468  2020-09-12               South West      0
## 1469  2020-09-13               South West      0
## 1470  2020-09-14               South West      0
## 1471  2020-09-15               South West      0
## 1472  2020-09-16               South West      0
## 1473  2020-09-17               South West      1
## 1474  2020-09-18               South West      0
## 1475  2020-09-19               South West      0
## 1476  2020-09-20               South West      1
## 1477  2020-09-21               South West      0
## 1478  2020-09-22               South West      0
## 1479  2020-09-23               South West      0
## 1480  2020-09-24               South West      0
## 1481  2020-09-25               South West      0
## 1482  2020-09-26               South West      0
## 1483  2020-09-27               South West      0
## 1484  2020-09-28               South West      0

1.5 Completion date

We extract the completion date from the NHS Pathways file timestamp:


database_date <- attr(x, "timestamp")
database_date
## [1] "2020-09-29"

The completion date of the NHS Pathways data is Tuesday 29 Sep 2020.

1.6 Auxiliary functions

These are functions which will be used further in the analyses.

Function to estimate the generalised R-squared as the proportion of deviance explained by a given model:


## Function to calculate R2 for Poisson model
## not adjusted for model complexity but all models have the same DF here

Rsq <- function(x) {
  1 - (x$deviance / x$null.deviance)
}

Function to extract growth rates per region as well as halving times, and the associated 95% confidence intervals:


## function to extract the coefficients, find the level of the intercept,
## reconstruct the values of r, get confidence intervals

get_r <- function(model) {
  ##  extract coefficients and conf int
  out <- data.frame(r = coef(model))  %>%
    rownames_to_column("var") %>% 
    cbind(confint(model)) %>%
    filter(!grepl("day_of_week", var)) %>% 
    filter(grepl("day", var)) %>%
    rename(lower_95 = "2.5 %",
           upper_95 = "97.5 %") %>%
    mutate(var = sub("day:", "", var))
  
  ## reconstruct values: intercept + region-coefficient
  for (i in 2:nrow(out)) {
    out[i, -1] <- out[1, -1] + out[i, -1]
  }
  
  ## find the name of the intercept, restore regions names
  out <- out %>%
    mutate(nhs_region = model$xlevels$nhs_region) %>%
    select(nhs_region, everything(), -var)
  
  ## find halving times
  halving <- log(0.5) / out[,-1] %>%
    rename(halving_t = r,
           halving_t_lower_95 = lower_95,
           halving_t_upper_95 = upper_95)
  
  ## set halving times with exclusion intervals to NA
  no_halving <- out$lower_95 < 0 & out$upper_95 > 0
  halving[no_halving, ] <- NA_real_
  
  ## return all data
  cbind(out, halving)
  
}

Functions used in the correlation analysis between NHS Pathways reports and deaths:

## Function to calculate Pearson's correlation between deaths and lagged
## reports. Note that `pearson` can be replaced with `spearman` for rank
## correlation.

getcor <- function(x, ndx) {
  return(cor(x$deaths[ndx],
             x$note_lag[ndx],
             use = "complete.obs",
             method = "pearson"))
}

## Catch if sample size throws an error
getcor2 <- possibly(getcor, otherwise = NA)

getboot <- function(x) {
  result <- boot::boot.ci(boot::boot(x, getcor2, R = 1000), 
                           type = "bca")
  return(data.frame(n = sum(!is.na(x$note_lag) & !is.na(x$deaths)),
                    r = result$t0,
                    r_low = result$bca[4],
                    r_hi = result$bca[5]))
}

Function to classify the day of the week into weekend, Monday, and the rest:


## Fn to add day of week
day_of_week <- function(df) {
  df %>% 
    dplyr::mutate(day_of_week = lubridate::wday(date, label = TRUE)) %>% 
    dplyr::mutate(day_of_week = dplyr::case_when(
      day_of_week %in% c("Sat", "Sun") ~ "weekend",
      day_of_week %in% c("Mon") ~ "monday",
      !(day_of_week %in% c("Sat", "Sun", "Mon")) ~ "rest_of_week"
    ) %>% 
      factor(levels = c("rest_of_week", "monday", "weekend")))
}

Custom color palettes, color scales, and vectors of colors:


pal <- c("#006212",
         "#ae3cab",
         "#00db90",
         "#960c00",
         "#55aaff",
         "#ff7e78",
         "#00388d")

age.pal <- viridis::viridis(3,begin = 0.1, end = 0.7)

3 Comparison with deaths time series

3.1 Outline

We want to explore the correlation between NHS Pathways reports and deaths, and assess the potential for reports to be used as an early warning system for disease resurgence.

Death data are publically available. We truncate the time series to avoid bias from reporting delay - we assume a conservative delay of three weeks.

3.2 Lagged correlation

We calculate Pearson’s correlation coefficient between deaths and NHS Pathways notifications using different lags. Confidence intervals are obtained using bootstrap. Note that results were also confirmed using Spearman’s rank correlation.

First we join the NHS Pathways and death data, and aggregate over all England:

## truncate death data for reporting delay
trunc_date <- max(dth$date_report) - delay_max

dth_trunc <- dth %>%
  rename(date = date_report) %>%
  filter(date <= trunc_date) 

## join with notification data
all_data <- x %>% 
  filter(!is.na(nhs_region)) %>%
  group_by(date, nhs_region) %>%
  summarise(count = sum(count, na.rm = T)) %>%
  ungroup %>%
  inner_join(dth_trunc,
             by = c("date","nhs_region"))

all_tot <- all_data %>%
  group_by(date) %>%
  summarise(count = sum(count, na.rm = TRUE),
            deaths = sum(deaths, na.rm = TRUE)) 

We calculate correlation with lagged NHS Pathways reports from 0 to 30 days behind deaths:


## Calculate all correlations + bootstrap CIs
lag_cor <- data.frame()
for (i in 0:30) {
  
  ## lag reports
  summary <- all_tot %>% 
    mutate(note_lag = lag(count, i)) %>%
    ## calculate rank correlation and bootstrap CI
    getboot(.) %>%
    mutate(lag = i)

  lag_cor <- bind_rows(lag_cor, summary)
}

cor_vs_lag <- ggplot(lag_cor, aes(lag, r)) +
  theme_bw() +
  geom_ribbon(aes(ymin = r_low, ymax = r_hi), alpha = 0.2) +
  geom_hline(yintercept = 0, lty = "longdash") +
  geom_point() +
  geom_line() +
  labs(x = "Lag between NHS pathways and death data (days)",
       y = "Pearson's correlation") +
  large_txt
cor_vs_lag


l_opt <- which.max(lag_cor$r)

This analysis suggests that the best lag is 23 days. We then compare and plot the number of deaths reported against the number of NHS Pathways reports lagged by 23 days.


all_tot <- all_tot %>%
  rename(date_death = date) %>%
  mutate(note_lag = lag(count, lag_cor$lag[l_opt]),
         note_lag_c = (note_lag - mean(note_lag, na.rm = T)),
         date_note = lag(date_death,16))

lag_mod <- glm(deaths ~ note_lag, data = all_tot, family = "quasipoisson")

summary(lag_mod)
## 
## Call:
## glm(formula = deaths ~ note_lag, family = "quasipoisson", data = all_tot)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -20.877   -7.665   -3.363    4.378   14.171  
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 3.919e+00  8.465e-02   46.30   <2e-16 ***
## note_lag    2.006e-05  8.777e-07   22.86   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for quasipoisson family taken to be 52.38965)
## 
##     Null deviance: 31109.8  on 150  degrees of freedom
## Residual deviance:  8235.9  on 149  degrees of freedom
##   (23 observations deleted due to missingness)
## AIC: NA
## 
## Number of Fisher Scoring iterations: 5

exp(coefficients(lag_mod))
## (Intercept)    note_lag 
##    50.35359     1.00002
exp(confint(lag_mod))
##                 2.5 %    97.5 %
## (Intercept) 42.486629 59.216912
## note_lag     1.000018  1.000022

Rsq(lag_mod)
## [1] 0.7352644

mod_fit <- as.data.frame(predict(lag_mod, type = "link", se.fit = TRUE)[1:2])

all_tot_pred <- 
  all_tot %>%
  filter(!is.na(note_lag)) %>%
  mutate(pred = mod_fit$fit,
         pred.se = mod_fit$se.fit,
         low = exp(pred - 1.96*pred.se),
         hi = exp(pred + 1.96*pred.se))


glm_fit <- all_tot_pred %>% 
    filter(!is.na(note_lag)) %>%
  ggplot(aes(x = note_lag, y = deaths)) +
  geom_point() + 
  geom_line(aes(y = exp(pred))) + 
  geom_ribbon(aes(ymin = low, ymax = hi), alpha = 0.3, col = "grey") +
  theme_bw() +
  labs(y = "Daily number of\ndeaths reported",
       x = "Daily number of NHS Pathways reports") +
  large_txt

glm_fit

4 Supplementary figures

4.1 Serial interval distribution

This is a comparison of gamma versus lognormal distribution for the serial interval used to convert r to R in our analysis. Both distributions are parameterised with mean 4.7 and standard deviation 2.9.

SI_param <- epitrix::gamma_mucv2shapescale(4.7, 2.9/4.7)
SI_distribution <- distcrete::distcrete("gamma", interval = 1,
                                        shape = SI_param$shape,
                                        scale = SI_param$scale, w = 0.5)

SI_distribution2 <- distcrete::distcrete("lnorm", interval = 1,
                                        meanlog = log(4.7),
                                        sdlog = log(2.9), w = 0.5)

SI_dist1 <- data.frame(x = SI_distribution$r(1e5)) 
SI_dist1 <- count(SI_dist1, x) %>%
    ggplot() +
    geom_col(aes(x = x, y = n)) +
    labs(x = "Serial interval (days)", y = "Frequency") +
    scale_x_continuous(breaks = seq(0, 30, 5)) +
    theme_bw()

SI_dist2 <- data.frame(x = SI_distribution2$r(1e5)) 
SI_dist2 <- count(SI_dist2, x) %>%
    ggplot() +
    geom_col(aes(x = x, y = n)) +
    labs(x = "Serial interval (days)", y = "Frequency") +
    scale_x_continuous(breaks = seq(0, 200, 20), limits = c(0, 200)) +
    theme_bw()


ggpubr::ggarrange(SI_dist1,
                  SI_dist2,
                  nrow = 1,
                  labels = "AUTO") 

4.2 Sensitivity analysis - 7 or 21 days moving window

We reproduce the window analysis with either a 7 or 21 days window for sensitivity purposes.

First with the 7 days window:

## set moving time window (1/2/3 weeks)
w <- 7

# create empty df
r_all_sliding_7days <- NULL

## make data for model
x_model_all_moving <- x %>%
  filter(!is.na(nhs_region)) %>% 
  group_by(date, nhs_region) %>%
  summarise(n = sum(count)) 

unique_dates <- unique(x_model_all_moving$date)

for (i in 1:(length(unique_dates) - w)) {
  
  date_i <- unique_dates[i]
  
  date_i_max <- date_i + w
  
  model_data <- x_model_all_moving %>%
    filter(date >= date_i & date < date_i_max) %>%
    mutate(day = as.integer(date - date_i)) %>% 
    day_of_week()
  
  
  mod <- glm(n ~ day * nhs_region + day_of_week,
             data = model_data,
             family = 'quasipoisson')
  
  # get growth rate
  r <- get_r(mod)
  r$w_min <- date_i
  r$w_max <- date_i_max
  
  # combine all estimates
  r_all_sliding_7days <- bind_rows(r_all_sliding_7days, r)
  
}

#serial interval distribution
SI_param = epitrix::gamma_mucv2shapescale(4.7, 2.9/4.7)
SI_distribution <- distcrete::distcrete("gamma", interval = 1,
                                        shape = SI_param$shape,
                                        scale = SI_param$scale,
                                        w = 0.5)

#convert growth rates r to R0
r_all_sliding_7days <- r_all_sliding_7days %>%
  mutate(R = epitrix::r2R0(r, SI_distribution),
         R_lower_95 = epitrix::r2R0(lower_95, SI_distribution),
         R_upper_95 = epitrix::r2R0(upper_95, SI_distribution))
# plot
plot_growth <-
  r_all_sliding_7days %>%
  ggplot(aes(x = w_max, y = r)) +
  geom_ribbon(aes(ymin = lower_95, ymax = upper_95, fill = nhs_region), alpha = 0.1) +
  geom_line(aes(colour = nhs_region)) +
  geom_point(aes(colour = nhs_region)) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  theme_bw() +
  scale_weeks +
  theme(legend.position = "bottom",
        plot.margin = margin(0.5,1,0.5,0.5, "cm")) +
  guides(colour = guide_legend(title = "",override.aes = list(fill = NA)), fill = FALSE) +
  labs(x = "",
       y = "Estimated daily growth rate (r)") +
  scale_colour_manual(values = pal)
plot_R <- r_all_sliding_7days %>%
  ggplot(aes(x = w_max, y = R)) +
  geom_ribbon(aes(ymin = R_lower_95, ymax = R_upper_95, fill = nhs_region), alpha = 0.1) +
  geom_line(aes(colour = nhs_region)) +
  geom_point(aes(colour = nhs_region)) +
  geom_hline(yintercept = 1, linetype = "dashed") +
  theme_bw() +
  scale_weeks +
  theme(legend.position = "bottom",
        plot.margin = margin(0.5,1,0.5,0.5, "cm")) +
  guides(color = guide_legend(title = "", override.aes = list(fill = NA)), fill = FALSE) +
  labs(x = "",
       y = "Estimated effective reproduction\nnumber (Re)") +
  scale_colour_manual(values = pal)

R <- r_all_sliding_7days %>%
  mutate(lower_95 = R_lower_95, 
         upper_95 = R_upper_95,
         value = R,
         measure = "R",
         reference = 1)

r_R <- r_all_sliding_7days %>%
  mutate(measure = "r",
         value = r,
         reference = 0) %>%
  bind_rows(R)

r_R_7 <- r_R %>%
  ggplot(aes(x = w_max, y = value)) +
  geom_ribbon(aes(ymin = lower_95, ymax = upper_95, fill = nhs_region), alpha = 0.1) +
  geom_line(aes(colour = nhs_region)) +
  geom_point(aes(colour = nhs_region)) +
  geom_hline(aes(yintercept = reference), linetype = "dashed") +
  theme_bw() +
  scale_weeks +
  theme(legend.position = "bottom",
        plot.margin = margin(0.5,1,0,0, "cm"),
        strip.background = element_blank(),
        strip.placement = "outside"
  ) +
  guides(color = guide_legend(title = "", override.aes = list(fill = NA)), fill = FALSE) +
  labs(x = "", y = "") +
  scale_colour_manual(values = pal) +
  facet_grid(rows = vars(measure),
             scales = "free_y",
             switch = "y",
             labeller = as_labeller(c(r = "Daily growth rate (r)",
                                      R = "Effective reproduction\nnumber (Re)")))

Then with the 21 days window:

## set moving time window (1/2/3 weeks)
w <- 21

# create empty df
r_all_sliding_21days <- NULL

## make data for model
x_model_all_moving <- x %>%
  filter(!is.na(nhs_region)) %>% 
  group_by(date, nhs_region) %>%
  summarise(n = sum(count)) 

unique_dates <- unique(x_model_all_moving$date)

for (i in 1:(length(unique_dates) - w)) {
  
  date_i <- unique_dates[i]
  
  date_i_max <- date_i + w
  
  model_data <- x_model_all_moving %>%
    filter(date >= date_i & date < date_i_max) %>%
    mutate(day = as.integer(date - date_i)) %>% 
    day_of_week()
  
  
  mod <- glm(n ~ day * nhs_region + day_of_week,
             data = model_data,
             family = 'quasipoisson')
  
  # get growth rate
  r <- get_r(mod)
  r$w_min <- date_i
  r$w_max <- date_i_max
  
  # combine all estimates
  r_all_sliding_21days <- bind_rows(r_all_sliding_21days, r)
  
}

#serial interval distribution
SI_param = epitrix::gamma_mucv2shapescale(4.7, 2.9/4.7)
SI_distribution <- distcrete::distcrete("gamma", interval = 1,
                                        shape = SI_param$shape,
                                        scale = SI_param$scale,
                                        w = 0.5)

#convert growth rates r to R0
r_all_sliding_21days <- r_all_sliding_21days %>%
  mutate(R = epitrix::r2R0(r, SI_distribution),
         R_lower_95 = epitrix::r2R0(lower_95, SI_distribution),
         R_upper_95 = epitrix::r2R0(upper_95, SI_distribution))
# plot
plot_growth <-
  r_all_sliding_21days %>%
  ggplot(aes(x = w_max, y = r)) +
  geom_ribbon(aes(ymin = lower_95, ymax = upper_95, fill = nhs_region), alpha = 0.1) +
  geom_line(aes(colour = nhs_region)) +
  geom_point(aes(colour = nhs_region)) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  theme_bw() +
  scale_weeks +
  theme(legend.position = "bottom",
        plot.margin = margin(0.5,1,0.5,0.5, "cm")) +
  guides(colour = guide_legend(title = "",override.aes = list(fill = NA)), fill = FALSE) +
  labs(x = "",
       y = "Estimated daily growth rate (r)") +
  scale_colour_manual(values = pal)
# plot
plot_R <-
  r_all_sliding_21days %>%
  ggplot(aes(x = w_max, y = R)) +
  geom_ribbon(aes(ymin = R_lower_95, ymax = R_upper_95, fill = nhs_region), alpha = 0.1) +
  geom_line(aes(colour = nhs_region)) +
  geom_point(aes(colour = nhs_region)) +
  geom_hline(yintercept = 1, linetype = "dashed") +
  theme_bw() +
  scale_weeks +
  theme(legend.position = "bottom",
        plot.margin = margin(0.5,1,0.5,0.5, "cm")) +
  guides(color = guide_legend(title = "", override.aes = list(fill = NA)), fill = FALSE) +
  labs(x = "",
       y = "Estimated effective reproduction\nnumber (Re)") +
  scale_colour_manual(values = pal)

R <- r_all_sliding_21days %>%
  mutate(lower_95 = R_lower_95, 
         upper_95 = R_upper_95,
         value = R,
         measure = "R",
         reference = 1)

r_R <- r_all_sliding_21days %>%
  mutate(measure = "r",
         value = r,
         reference = 0) %>%
  bind_rows(R)

r_R_21 <- r_R %>%
  ggplot(aes(x = w_max, y = value)) +
  geom_ribbon(aes(ymin = lower_95, ymax = upper_95, fill = nhs_region), alpha = 0.1) +
  geom_line(aes(colour = nhs_region)) +
  geom_point(aes(colour = nhs_region)) +
  geom_hline(aes(yintercept = reference), linetype = "dashed") +
  theme_bw() +
  scale_weeks +
  theme(legend.position = "bottom",
        plot.margin = margin(0.5,1,0,0, "cm"),
        strip.background = element_blank(),
        strip.placement = "outside"
  ) +
  guides(color = guide_legend(title = "", override.aes = list(fill = NA)), fill = FALSE) +
  labs(x = "", y = "") +
  scale_colour_manual(values = pal) +
  facet_grid(rows = vars(measure),
             scales = "free_y",
             switch = "y",
             labeller = as_labeller(c(r = "Daily growth rate (r)",
                                      R = "Effective reproduction\nnumber (Re)")))

And we combine both outputs into a single plot:


ggpubr::ggarrange(r_R_7,
                  r_R_21,
                  nrow = 2,
                  labels = "AUTO",
                  common.legend = TRUE,
                  legend = "bottom") 

4.3 Correlation between NHS Pathways reports and deaths by NHS region


lag_cor_reg <- data.frame()

for (i in 0:30) {

  summary <-
    all_data %>%
    group_by(nhs_region) %>%
    mutate(note_lag = lag(count, i)) %>%
    ## calculate rank correlation and bootstrap CI for each region
    group_modify(~getboot(.x)) %>%
    mutate(lag = i)
  
  lag_cor_reg <- bind_rows(lag_cor_reg, summary)
}

cor_vs_lag_reg <- 
lag_cor_reg %>%
ggplot(aes(lag, r, col = nhs_region)) +
  geom_hline(yintercept = 0, lty = "longdash") +
  geom_ribbon(aes(ymin = r_low, ymax = r_hi, col = NULL, fill = nhs_region), alpha = 0.2) +
  geom_point() +
  geom_line() +
  facet_wrap(~nhs_region) +
  scale_color_manual(values = pal) +
  scale_fill_manual(values = pal, guide = F) +  
  theme_bw() +
  labs(x = "Lag between NHS pathways and death data (days)", y = "Pearson's correlation", col = "NHS region") +
  theme(legend.position = "bottom") +
  guides(color = guide_legend(override.aes = list(fill = NA)))

cor_vs_lag_reg

5 Export data

We save the tables created during our analysis:


if (!dir.exists("excel_tables")) {
  dir.create("excel_tables")
}


## list all tables, and loop over export
tables_to_export <- c("r_all_sliding", "lag_cor")

for (e in tables_to_export) {
  rio::export(get(e),
              file.path("excel_tables",
                        paste0(e, ".xlsx")))
}

## also export result from regression on lagged data 
rio::export(lag_mod, file.path("excel_tables", "lag_mod.rds"))

6 System information

6.1 Outline

The following information documents the system on which the document was compiled.

6.2 System

This provides information on the operating system.

Sys.info()
##                                                                                            sysname 
##                                                                                           "Darwin" 
##                                                                                            release 
##                                                                                           "19.6.0" 
##                                                                                            version 
## "Darwin Kernel Version 19.6.0: Thu Jun 18 20:49:00 PDT 2020; root:xnu-6153.141.1~1/RELEASE_X86_64" 
##                                                                                           nodename 
##                                                                          "Mac-1601460440706.local" 
##                                                                                            machine 
##                                                                                           "x86_64" 
##                                                                                              login 
##                                                                                             "root" 
##                                                                                               user 
##                                                                                           "runner" 
##                                                                                     effective_user 
##                                                                                           "runner"

6.3 R environment

This provides information on the version of R used:

R.version
##                _                           
## platform       x86_64-apple-darwin17.0     
## arch           x86_64                      
## os             darwin17.0                  
## system         x86_64, darwin17.0          
## status                                     
## major          4                           
## minor          0.2                         
## year           2020                        
## month          06                          
## day            22                          
## svn rev        78730                       
## language       R                           
## version.string R version 4.0.2 (2020-06-22)
## nickname       Taking Off Again

6.4 R packages

This provides information on the packages used:

sessionInfo()
## R version 4.0.2 (2020-06-22)
## Platform: x86_64-apple-darwin17.0 (64-bit)
## Running under: macOS Catalina 10.15.6
## 
## Matrix products: default
## BLAS:   /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRblas.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib
## 
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
##  [1] ggnewscale_0.4.3     ggpubr_0.4.0         lubridate_1.7.9     
##  [4] chngpt_2020.8-29     cyphr_1.1.0          DT_0.15             
##  [7] kableExtra_1.2.1     janitor_2.0.1        remotes_2.2.0       
## [10] projections_0.5.1    earlyR_0.0.1         epitrix_0.2.2       
## [13] distcrete_1.0.3      incidence_1.7.2      rio_0.5.16          
## [16] reshape2_1.4.4       rvest_0.3.6          xml2_1.3.2          
## [19] linelist_0.0.40.9000 forcats_0.5.0        stringr_1.4.0       
## [22] dplyr_1.0.2          purrr_0.3.4          readr_1.3.1         
## [25] tidyr_1.1.2          tibble_3.0.3         ggplot2_3.3.2       
## [28] tidyverse_1.3.0      here_0.1             reportfactory_0.0.5 
## 
## loaded via a namespace (and not attached):
##  [1] minqa_1.2.4       colorspace_1.4-1  selectr_0.4-2     ggsignif_0.6.0   
##  [5] ellipsis_0.3.1    rprojroot_1.3-2   snakecase_0.11.0  fs_1.5.0         
##  [9] rstudioapi_0.11   farver_2.0.3      fansi_0.4.1       splines_4.0.2    
## [13] knitr_1.30        jsonlite_1.7.1    nloptr_1.2.2.2    broom_0.7.0      
## [17] dbplyr_1.4.4      compiler_4.0.2    httr_1.4.2        backports_1.1.10 
## [21] assertthat_0.2.1  Matrix_1.2-18     cli_2.0.2         htmltools_0.5.0  
## [25] tools_4.0.2       gtable_0.3.0      glue_1.4.2        Rcpp_1.0.5       
## [29] carData_3.0-4     cellranger_1.1.0  vctrs_0.3.4       nlme_3.1-148     
## [33] matchmaker_0.1.1  crosstalk_1.1.0.1 xfun_0.18         openxlsx_4.2.2   
## [37] lme4_1.1-23       lifecycle_0.2.0   statmod_1.4.34    rstatix_0.6.0    
## [41] MASS_7.3-51.6     scales_1.1.1      hms_0.5.3         sodium_1.1       
## [45] yaml_2.2.1        curl_4.3          gridExtra_2.3     stringi_1.5.3    
## [49] kyotil_2020.8-22  boot_1.3-25       zip_2.1.1         rlang_0.4.7      
## [53] pkgconfig_2.0.3   evaluate_0.14     lattice_0.20-41   htmlwidgets_1.5.1
## [57] labeling_0.3      cowplot_1.1.0     tidyselect_1.1.0  plyr_1.8.6       
## [61] magrittr_1.5      R6_2.4.1          generics_0.0.2    DBI_1.1.0        
## [65] pillar_1.4.6      haven_2.3.1       foreign_0.8-80    withr_2.3.0      
## [69] mgcv_1.8-31       survival_3.1-12   abind_1.4-5       modelr_0.1.8     
## [73] crayon_1.3.4      car_3.0-10        utf8_1.1.4        rmarkdown_2.3    
## [77] viridis_0.5.1     grid_4.0.2        readxl_1.3.1      data.table_1.13.0
## [81] blob_1.2.1        reprex_0.3.0      digest_0.6.25     webshot_0.5.2    
## [85] munsell_0.5.0     viridisLite_0.3.0